//
//  YMTableViewController.swift
//  YMSwiftUI
//
//  Created by anscen on 2022/4/26.
//

import UIKit

class YMTableViewController: UIViewController {
    public lazy var tableView : UITableView = {
        let tableView = UITableView(frame: CGRect.zero, style:.grouped)
        tableView.dataSource = self
        tableView.delegate = self
        tableView.rowHeight = UITableView.automaticDimension
        tableView.estimatedRowHeight = 60
        tableView.keyboardDismissMode = .onDrag
        tableView.separatorStyle = .none
        tableView.showsVerticalScrollIndicator = false
        tableView.register(UITableViewCell.classForCoder(), forCellReuseIdentifier: NSStringFromClass(UITableViewCell.classForCoder()))
        tableView.backgroundColor = UIColor.white
        tableView.backgroundView?.backgroundColor = UIColor.white
        if #available(iOS 15.0, *) {
            tableView.sectionHeaderTopPadding = 0
        } else {
            // Fallback on earlier versions
        }
        return tableView
    }()
    override func viewDidLoad() {
        super.viewDidLoad()
        self.title = "表格"
        self.edgesForExtendedLayout = []
        self.view.addSubview(self.tableView)
        self.tableView.frame = self.view.frame
        self.tableView.reloadData()
    }
}
extension YMTableViewController :UITableViewDataSource{
    //MARK: UITableViewDelegate
    func numberOfSections(in tableView: UITableView) -> Int {
        return 1
    }
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 20
    }
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        return 60
    }
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: NSStringFromClass(UITableViewCell.classForCoder()))
        cell?.textLabel?.text = "\(indexPath.row + 1)"
        cell?.textLabel?.textColor = UIColor.red
        return cell ?? UITableViewCell()
    }
}
extension YMTableViewController :UITableViewDelegate{
    //MARK: UITableViewDelegate
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        tableView.deselectRow(at: indexPath, animated: true);
    }
}
